package com.ys.entity.finance;
import java.math.BigDecimal;
import java.util.Date;
import javax.persistence.Table;
import com.alibaba.fastjson.annotation.JSONField;
import com.ys.annotation.YsField;
import com.ys.entity.base.BaseEntity;
/**
*/
@Table(name="TCW_ExpenseSettleReturnItem", catalog="Id")
public class TcwExpenseSettleReturnItem extends BaseEntity<TcwExpenseSettleReturnItem> {

	@YsField(nameDataBase="Id", nameJava="id", typeDataBase="bigint")
	private Long id;
	@YsField(nameDataBase="Pbid", nameJava="pbid", typeDataBase="varchar")
	private String pbid;
	@YsField(nameDataBase="AccountDetailedForCompanyId", nameJava="accountDetailedForCompanyId", typeDataBase="bigint")
	private Long accountDetailedForCompanyId;
	@YsField(nameDataBase="ReturnAmount", nameJava="returnAmount", typeDataBase="decimal")
	private BigDecimal returnAmount;
	@YsField(nameDataBase="AccountDetailedRemark", nameJava="accountDetailedRemark", typeDataBase="varchar")
	private String accountDetailedRemark;
	@YsField(nameDataBase="ReturnReason", nameJava="returnReason", typeDataBase="varchar")
	private String returnReason;
	@YsField(nameDataBase="Status", nameJava="status", typeDataBase="tinyint")
	private Integer status;
	@JSONField(format = "yyyy-MM-dd HH:mm:ss")
	@YsField(nameDataBase="CreateTime", nameJava="createTime", typeDataBase="datetime")
	private Date createTime;
	@JSONField(format = "yyyy-MM-dd HH:mm:ss")
	@YsField(nameDataBase="UpdateTime", nameJava="updateTime", typeDataBase="datetime")
	private Date updateTime;

	public Long getId() {
		return id;
	}
	public TcwExpenseSettleReturnItem setId(Long id) {
		this.id = id;
		return this;
	}
	public String getPbid() {
		return pbid;
	}
	public TcwExpenseSettleReturnItem setPbid(String pbid) {
		this.pbid = pbid;
		return this;
	}
	public Long getAccountDetailedForCompanyId() {
		return accountDetailedForCompanyId;
	}
	public TcwExpenseSettleReturnItem setAccountDetailedForCompanyId(Long accountDetailedForCompanyId) {
		this.accountDetailedForCompanyId = accountDetailedForCompanyId;
		return this;
	}
	public BigDecimal getReturnAmount() {
		return returnAmount;
	}
	public TcwExpenseSettleReturnItem setReturnAmount(BigDecimal returnAmount) {
		this.returnAmount = returnAmount;
		return this;
	}
	public String getAccountDetailedRemark() {
		return accountDetailedRemark;
	}
	public TcwExpenseSettleReturnItem setAccountDetailedRemark(String accountDetailedRemark) {
		this.accountDetailedRemark = accountDetailedRemark;
		return this;
	}
	public String getReturnReason() {
		return returnReason;
	}
	public TcwExpenseSettleReturnItem setReturnReason(String returnReason) {
		this.returnReason = returnReason;
		return this;
	}
	public Integer getStatus() {
		return status;
	}
	public TcwExpenseSettleReturnItem setStatus(Integer status) {
		this.status = status;
		return this;
	}
	public Date getCreateTime() {
		return createTime;
	}
	public TcwExpenseSettleReturnItem setCreateTime(Date createTime) {
		this.createTime = createTime;
		return this;
	}
	public Date getUpdateTime() {
		return updateTime;
	}
	public TcwExpenseSettleReturnItem setUpdateTime(Date updateTime) {
		this.updateTime = updateTime;
		return this;
	}

	public static TcwExpenseSettleReturnItem tcwExpenseSettleReturnItem(
		String pbid,
		Long accountDetailedForCompanyId,
		BigDecimal returnAmount,
		String accountDetailedRemark,
		String returnReason,
		Integer status
			) {
		TcwExpenseSettleReturnItem entity = new TcwExpenseSettleReturnItem();
		entity.setPbid(pbid);
		entity.setAccountDetailedForCompanyId(accountDetailedForCompanyId);
		entity.setReturnAmount(returnAmount);
		entity.setAccountDetailedRemark(accountDetailedRemark);
		entity.setReturnReason(returnReason);
		entity.setStatus(status);
		return entity;
	}
}